package com.qckj.amz.service;

import com.qckj.amz.domain.ProductImageCategory;
import com.qckj.common.core.domain.AjaxResult;
import org.springframework.data.domain.Page;

import java.util.List;

/**
 * 产品图片分类Service接口
 *
 * @author luchuan
 * @since 1.0 2022-03-16
 */
public interface IProductImageCategoryService  {
    /**
     * 查询产品图片分类
     *
     * @param id 产品图片分类ID
     * @return 产品图片分类
     */
    ProductImageCategory findById(Long id);

    /**
     * 分页查询产品图片分类列表
     *
     * @param req 产品图片分类
     * @return 产品图片分类集合
     */
    Page<ProductImageCategory> findProductImageCategoryPage(ProductImageCategory req);

    /**
     * 查询产品图片分类列表
     *
     * @param req 产品图片分类
     * @return 产品图片分类集合
     */
    List<ProductImageCategory> findProductImageCategoryList(ProductImageCategory req);

    /**
     * 新增产品图片分类
     *
     * @param productImageCategory 产品图片分类
     * @return 结果
     */
    AjaxResult save(ProductImageCategory productImageCategory);

    /**
     * 批量删除产品图片分类
     *
     * @param ids 需要删除的产品图片分类ID
     * @return 结果
     */
    void deleteByIds(List<Long> ids);

    /**
     * 删除产品图片分类信息
     *
     * @param id 产品图片分类ID
     * @return 结果
     */
    void deleteProductImageCategoryById(Long id);

    /**
     * 获取图片分类列表
     * @param type
     * @param status
     * @param name
     * @return
     */
    AjaxResult getListTreeCategory(Integer type, Integer status, String name);

    /**
     * 修改产品图片分类
     * @param productImageCategory
     * @return
     */
    AjaxResult update(ProductImageCategory productImageCategory);
}
